package cn.stylefeng.roses.kernel.pay.modular.pojo;

import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 商品信息封装类
 *
 * @author stylefeng
 * @date 2021/06/23 22:39
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class GoodsRequest extends BaseRequest {

    /**
     * 商品id
     */
    @NotNull(message = "商品id不能为空", groups = {edit.class, delete.class, detail.class})
    private Long goodsId;

    /**
     * 商品名称
     */
    @NotBlank(message = "商品名称不能为空", groups = {add.class, edit.class})
    private String goodsName;

    /**
     * 商品简介
     */
    private String goodsDesc;

    /**
     * 商品封面图片，url全路径
     */
    private String goodsPic;

    /**
     * 详情介绍的url，url全路径
     */
    private String detailUrl;

    /**
     * 商品标价
     */
    @NotNull(message = "商品标价不能为空", groups = {add.class, edit.class})
    private BigDecimal price;

    /**
     * 商品有效年数，-1为永久
     */
    private Integer expiryYear;

    /**
     * 状态：1-发布，2-撤销
     */
    @NotNull(message = "状态：1-发布，2-撤销不能为空", groups = {add.class, edit.class})
    private Integer goodsStatus;

    /**
     * 排序号
     */
    private Integer sortNumber;

}
